<?php
/**
 * 网站后台管理系统-登录
 * @author 邝达峰
 * @date 2014年3月3日 
 * @version 3.0
 */

class Login extends BaseAction
{
	/**
	 * 初始化
	 */
	public function _init()
	{

	}

	/**
	 * 默认动作
	 */
	protected function _default()
	{
		if($_SERVER['REQUEST_METHOD']=='POST'){
		    $strUserName = $this->getParam('uname');
			$strUserPass = $this->getParam('upass');
			#获取登录次数
			$intLoginNum = $this->session()->getSession('front_login_num');
			#登录限制次数
			$intLoginLimit = 10;
			if(empty($intLoginNum)){
				$this->session()->writeSession('front_login_num',0);
			}
			if(++$intLoginNum > $intLoginLimit){
				die('error_num');
			}
			if(Preg::isPassword($strUserPass)===false){
			     die('error_pass');
		    }
			#创建数据库操作对象
			$objUser = $this->getModel('users');
			#查询登录信息
			$mysqlData = $objUser->getUserInfo($strUserName);
			if(count($mysqlData) > 1){
				die('error');
			}
			if(empty($mysqlData))
			{
				die('error_user');
			}
			#检查用户名是否一致
			$crypt = new Crypt();//密码加密
			$userpwd = $crypt->decode($mysqlData[0]['USERPWD']);
			if($mysqlData[0]['USERNAME'] != $strUserName){
				die('error_user');
			}
			#检查登录密码否一致
			if($strUserPass !== $userpwd )
			{
				die('error_pass');
			}
			#设置登录信息session
			$this->session()->writeSession('front_uid',$mysqlData[0]['ID']);
			$this->session()->writeSession('front_uname',$strUserName);
			if($mysqlData[0]){
				#设置cookie
				setcookie('fuid', Generator::logEnCode($mysqlData[0]['ID']), time() + 3600, '/');
				#登录成功
				die('ok');
			}else{
				die('error');
			}
		}
		
		die('服务器错误404');
		
	}

}
?>
